package com.ict.web.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.ict.web.domain.ExpertInformationSheet;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class ExtractRuleEditDto {

    /** 评审任务Id */
    @ApiModelProperty(value = "评审任务Id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long reviewTaskId;

    /** 规则表id */
    @ApiModelProperty(value = "规则表id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long extractRuleId;

    /** 抽取类型{1:按条件抽取 2：随机抽取 3：指定专家} */
    @ApiModelProperty(value = "抽取类型{1:按条件抽取 2：随机抽取 3：指定专家}")
    private String extractType;

    /** 人数 */
    @ApiModelProperty(value = "人数，varchar：2")
    private Integer peopleNumber;

    /** 抽取规则描述 */
    @ApiModelProperty(value = "抽取规则描述，varchar：50")
    private String extractRuleDesc;


    /** 指定专家id*/
    @ApiModelProperty(value = "指定专家id")
    private List<Long> expertIdList;

    /** 条件抽取专家*/
    @ApiModelProperty(value = "条件抽取专家")
    private ExpertInformationSheet expertInformationSheet;

    public ExtractRuleEditDto(ExpertInformationSheet expertInformationSheet, List<Long> expertIdList, Integer peopleNumber) {
        this.expertInformationSheet=expertInformationSheet;
        this.expertIdList=expertIdList;
        this.peopleNumber=peopleNumber;
    }

    public ExtractRuleEditDto(Integer peopleNumber) {
        this.peopleNumber=peopleNumber;
    }
}
